home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / edit / me_cd25.zip / DOC.ZIP / README < prev    next >
Text File  |  1992-11-09  |  8KB  |  219 lines

  1. -*-text-*-
  2.  
  3. The is the README for ME2.  It contains source for:
  4.     ME2 (the Mutt Editor v2.5)
  5.     MC2 (the Mutt Compiler v2.1)
  6.     a Compute Server (v1.0)
  7.     various libraries
  8.     Mutt extensions to ME2
  9.  
  10. Released:
  11.   2.5: August 30, 1992 (Many extensions now compiled into the editor)
  12.   2.4: August 9, 1992 (regular expression bug fixes, a PC screen width
  13.        bug fix)
  14.   2.3  May 10, 1992 (Atari port, minor enhancements)
  15.   2.2: April 12, 1992 (MS-DOS and OS2 ports, bug fixes)
  16.   2.0: February 29, 1992 (beta)
  17.  
  18.  
  19. This release is targeted at Unix, MS-DOS, OS/2 and Atari.  I've tried to
  20. write the code as portablly as possible (in C and ANSI C) so hopefully
  21. it should be "easy" to port to other platforms (that support C).
  22.  
  23. This stuff is released as GNU Ware - use, share and enjoy.
  24.  
  25.  
  26.  
  27.                  What is ME2?
  28.                  ---- -- ----
  29.  
  30.    ME2 is a small, portable, extendable [GNU] Emacs' like editor that is
  31. known to compile and run on HP-UX (Series 800, 700 and 300), BSD Unix
  32. (Sun, Apollo, DEC, etc), IBM AIX, OSF/POSIX (HP and DEC), MS-DOS/PC-DOS
  33. (IBM PCs and compatibles), OS/2 and Atari (TOS and MiNT).  "Pure" SysV
  34. Unix is not supported.  ME2 is very customizable via a compiled language
  35. (provided) with lots of example programs:  a C mode, paren matching, a
  36. visual towers of hanoi, incremental searching, programmers calculator,
  37. mark rings, multi file search (and replace), picture mode (from GNU
  38. Emacs), gomoku (from GNU Emacs) and lots more.  Other features include 8
  39. bit character support and the (Unix only) ability to have concurrent
  40. processes (such as make) running in a buffer.
  41.  
  42.  
  43.  
  44.             How to Compile and Install ME2
  45.             --- -- ------- --- ------- ---
  46.  
  47. Compiling
  48. ---------
  49.  
  50. You can either use the compile /bin/sh shell scripts or the Makefiles.
  51.  
  52. In both cases:
  53.   Edit util/os.h so it matches your OS.
  54.   Edit me2/config.h so that it matches what you want ME2 to support.
  55.  
  56. For the Makefiles:
  57.   Edit me2/Makefile so that it matches your OS and config.h.
  58.   Edit ./Makefile.
  59.   Type make in this directory and it will compile all the
  60.     subdirectories.
  61.  
  62. For the compile scripts:
  63.   Edit me2/compile so that it matches your OS and config.h.
  64.   Edit ./compile for the CFLAGS you want.
  65.   Type "./compile" in this directory and it will compile all the
  66.     subdirectories.
  67.  
  68.  
  69. Notes:
  70.   I've run the compile scripts (and tested the results) on:
  71.       HP-UX 9.0  series 700 (Ansi C "-Aa -O")
  72.       HP-UX 8.0  series 300, 800 (K&R "-O" and Ansi C "-Aa -O")
  73.       HP-UX 7.05 series 300 (K&R "-O")
  74.       HP-UX 7.0  series 800 (K&R "-O" and Ansi C "-Aa -O")
  75.       HP OSF/1 1.0 Operating System A.01.00 ("" - DON'T use -O)
  76.       Apollo 68k SR10.4 BSD (psudeo Ansi C "-O" and Ansi C "-O -Aansi").
  77.     Make sure to set DOMAIN_OS in util/os.h.
  78.     The compiles will complain (lots) about varargs and select.  You
  79.     can ignore these.  I'm pretty sure the varargs complaints are
  80.     groundless (ie I've run it a long time without problems).  If
  81.     you get tired of the messages, you can put "-U__STDC__" in the
  82.     compile flags.
  83.       Sun SparcStation 2, SunOS Release 4.1.1 ("-O")
  84.       IBM RS/6000, AIX Version 3.1 ("-O").  AIX 3.2 ("-O" or ANSI C
  85.     "CC=c89").  Make sure you use -lcurses in me2/compile and set
  86.     AIX_OS in util/os.h.
  87.       DEC 3100 OSF/1 ("-O").  Not much testing done.
  88.       DECstation 5000/200 ULTRIX V4.2 ("-O").  You may need to set
  89.     FOPEN_BINARY (me2/config.h).  On this version of ULTRIX, "rb" is
  90.     OK.  Also, you may need to comment out the
  91.     "#define _POSIX_SOURCE" at the top of util/fxpand.c
  92.     They should run on other Unix boxes but I can't test everything.
  93.       Let me know if you find problems.
  94.  
  95.   Unixes that kinda work:
  96.     UNIX_System_V 4.1.0 V4ES i386 x86at (a 486 running a SYS V unix).
  97.       To get this to compile:
  98.         - change the #includes of time.h to sys/time.h (./me2/process.c,
  99.       ./me2/unixio.c, ./comserver/comserver.c).
  100.     - in comserver/compile and me2/compile, add "-lsocket -lnsl" to
  101.       the cc line so the socket code will link.
  102.     - or just turn off the compute server (in me2/config.h) and
  103.       don't worry about the socket code.  See why below.
  104.       Problem areas:
  105.         - getcwd() (called from util/canonize.c) gets an access error.
  106.       Maybe its the way my system is set up.  To get around this,
  107.       you have to run me2 setuid root.  Not a very good idea.
  108.     - Some of the termcaps don't seem right.  Use a "xterm" TERM var
  109.       for xterms, "vt100" doesn't work.
  110.     - The compute server doesn't work very well with SYS V signals -
  111.       ME2 will get a signal (from the compute server) while signals
  112.       turned off and dump (not a problem with BSD like signals).
  113.       Maybe linking in /usr/ucblib/libucb.a would work (BSD
  114.       signals).  Nope - seemed to fix the signal problem but broke
  115.       the LED lib and filename completion.  I really shouldn't use
  116.       signals for interprocess communication.
  117.  
  118.   Unixes not supported:
  119.     Apollo SysV (probably any "real" Sys V Unix)
  120.       Sockets are not supported so you need to turn off the compute
  121.         server (in config.h) and don't compile the comserver directory.
  122.       unixio.c has compile problems:
  123.         Change #include <time.h> to <sys/time.h> (why?).
  124.         termio.h doesn't seem to be supported so try USE_BSDIO.
  125.     select() needs to be updated to use the "new" structures.  I
  126.       would do this but its yet another #ifdef and I'm getting tired
  127.       of them.
  128.       Other than that, the other directories seem to compile and work.
  129.       Your best bet is just to compile under BSD.
  130.       If you fix this stuff, send the the changes so I can add them to
  131.         my copies.
  132.       
  133.  
  134.   MS-DOS:
  135.     The compile scripts won't run but should give you an idea of what
  136.       needs to be done.  See below.
  137.  
  138.     John Burnell has ported ME2 to PC-DOS:
  139.       Compiler: JPI Topspeed C  ("__TSC__").
  140.       ME2:
  141.     Use the large memory model (1 meg code and data).  Remember to
  142.       compile the libraries that way also.
  143.     Use FASTVIDEO (me2/config.h)
  144.     Build files (see me2/compile):
  145.       terminal=
  146.       termlib=
  147.       io=misc/pcio.c
  148.       keymap=misc/pckmap.c
  149.       fileio=fileio.c
  150.       process=
  151.       fastvideo=misc/pcfv.c
  152.       spam =
  153.       The util directory:
  154.     fxpand.c uses some Lattice C calls that may not be in other
  155.       Cs.  If this is the case for your compiler, check out
  156.       util/misc/ibmdir.c and util/misc/ibmdir.h to see if they
  157.       will work.  If so, move all files in  misc/ to util/ and add
  158.       them to the utils library.
  159.       Other programs:
  160.     The other programs can use the small code, large data model.
  161.     The compute server is not supported.
  162.  
  163.   OS/2 (port by John Burnell):
  164.     Compiler: JPI Topspeed C  ("__TSC__").
  165.     OS/2 1.3 on a FAT drive, not sure whether it will support HPSF
  166.       filenames (probably not since it uses the MSDOS code to parse
  167.       filenames, although it may cope with long filenames).  Certainly
  168.       it does nothing with EAs at present.
  169.     To compile it, configure the system for MSDOZ (util/os.h), except
  170.       replace the DOS files with the corresponding OS/2 ones viz:
  171.     ./util        replace ibmdir.c with os2dir.c
  172.     ./me2/misc    replace pcfile.c with os2filio.c
  173.             replace pcio.c with os2io.c
  174.             don't use pcfv.c
  175.  
  176.  
  177.   Atari ST TOS and MiNT (port and Makefiles by Jwahar R. Bammi):
  178.     Read ./Makefile for more info.
  179.  
  180.  
  181.   I'd like to keep a list of systems that have compiled and run ME2 and
  182.     those systems that don't.  Please send me info if your system is not
  183.     listed.  Also send bug reports/fixes.
  184.  
  185.  
  186. Installing
  187. ----------
  188.  
  189. Do one of:
  190.   - Use the install script (as root).
  191.   - Edit ./Makefile and "make install".
  192.   - 
  193.     Copy me2/me2 and mc2/mc2 to /usr/local/bin or to a directory in your
  194.       $PATH.
  195.     Copy mutt2/*.mco to /usr/local/lib/me2 or where you specified in
  196.       config.h.  Or leave them where they are and use the ME2
  197.       environment variable (which is what I do).  See "load" in
  198.       me2/doc/me2.doc for more about this var.
  199.  
  200. As a quick test, run me2, hit Escape x load <return> ganoi <return> and
  201. use 4 disks.  If you get the towers of hanoi, things are probably
  202. working pretty good.
  203.  
  204. Read all the documentation